package com.jy.adscm.operation.lxcg.bean;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * <p>
 * 零星采购任务
 * </p>
 *
 * @author zyl
 * @since 2019-08-15
 */
public class LxcgTask implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 订单号
     */
    private String orderNums;
    /**
     * 供应商
     */
    private Long supplier;
    @TableField(exist = false)
    private LxcgSupplier supplierName;
    /**
     * 创建人(申请人)
     */
    private String creator;
    @TableField(exist = false)
    private String creatorName;
    /**
     * 申请人部门
     */
    private String creatorDept;
    @TableField(exist = false)
    private String creatorDeptName;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 采购人员
     */
    private String cgPerson;
    @TableField(exist = false)
    private String cgPersonName;
    /**
     * 是否启动
     */
    private Integer isStart;
    /**
     * 任务启动时间
     */
    private Date startTime;
    /**
     * 是否开始备货
     */
    private Integer isStockUp;
    /**
     * 开始备货时间
     */
    private Date stockUpTime;
    /**
     * 供应商备货过程是否检查
     */
    private Integer isCheckUp;
    /**
     * 检查时间
     */
    private Date checkUpTime;
    /**
     * 是否已发货
     */
    private Integer isDeliver;
    /**
     * 发货时间
     */
    private Date deliverTime;
    /**
     * 是否到货
     */
    private Integer isArrive;
    /**
     * 收货时间
     */
    private Date arriveTime;
    /**
     * 收货创建时间
     */
    private Date arriveAddTime;
    /**
     * 库房人员
     */
    private String kfPerson;
    @TableField(exist = false)
    private String kfPersonName;
    /**
     * 货款是否已结
     */
    private Integer isPay;
    /**
     * 付款金额
     */
    private String paySum;
    /**
     * 付款时间
     */
    private Date payTime;
    /**
     * 付款创建时间
     */
    private Date payAddTime;
    /**
     * 是否收到发票
     */
    private Integer isReceiveInvoice;
    /**
     * 发票号
     */
    private String invoiceCode;
    private Date receiveInvoiceTime;
    private Date receiveInvoiceAddTime;
    /**
     * 财务人员
     */
    private String cwPerson;
    @TableField(exist = false)
    private String cwPersonName;
    /**
     * 任务完成时间
     */
    private Date taskFinishTime;
    /**
     * 任务状态
     */
    private Integer state;
    /**
     * 令号
     */
    private String makeNo;
    private Integer isSendEmail;
    /**
     * 支付凭证
     */
    private String payEvidence;
    /**
     * 收货凭证
     */
    private String receiveEvidence;
    //应付总金额
    @TableField(exist = false)
    private Float  totals;
    @TableField(exist = false)
    private String  lxcgTaskDetail;

    public String getLxcgTaskDetail() {
        return lxcgTaskDetail;
    }

    public void setLxcgTaskDetail(String lxcgTaskDetail) {
        this.lxcgTaskDetail = lxcgTaskDetail;
    }

    public Float getTotals() {
        return totals;
    }

    public void setTotals(Float totals) {
        this.totals = totals;
    }

    public LxcgSupplier getSupplierName() {
        return supplierName;
    }

    public void setSupplierName(LxcgSupplier supplierName) {
        this.supplierName = supplierName;
    }

    public String getCreatorName() {
        return creatorName;
    }

    public void setCreatorName(String creatorName) {
        this.creatorName = creatorName;
    }

    public String getCreatorDeptName() {
        return creatorDeptName;
    }

    public void setCreatorDeptName(String creatorDeptName) {
        this.creatorDeptName = creatorDeptName;
    }

    public String getCgPersonName() {
        return cgPersonName;
    }

    public void setCgPersonName(String cgPersonName) {
        this.cgPersonName = cgPersonName;
    }

    public String getKfPersonName() {
        return kfPersonName;
    }

    public void setKfPersonName(String kfPersonName) {
        this.kfPersonName = kfPersonName;
    }

    public String getCwPersonName() {
        return cwPersonName;
    }

    public void setCwPersonName(String cwPersonName) {
        this.cwPersonName = cwPersonName;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getOrderNums() {
        return orderNums;
    }

    public void setOrderNums(String orderNums) {
        this.orderNums = orderNums;
    }

    public Long getSupplier() {
        return supplier;
    }

    public void setSupplier(Long supplier) {
        this.supplier = supplier;
    }

    public String getCreator() {
        return creator;
    }

    public void setCreator(String creator) {
        this.creator = creator;
    }

    public String getCreatorDept() {
        return creatorDept;
    }

    public void setCreatorDept(String creatorDept) {
        this.creatorDept = creatorDept;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getCgPerson() {
        return cgPerson;
    }

    public void setCgPerson(String cgPerson) {
        this.cgPerson = cgPerson;
    }

    public Integer getIsStart() {
        return isStart;
    }

    public void setIsStart(Integer isStart) {
        this.isStart = isStart;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getStartTime() {
        return startTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Integer getIsStockUp() {
        return isStockUp;
    }

    public void setIsStockUp(Integer isStockUp) {
        this.isStockUp = isStockUp;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getStockUpTime() {
        return stockUpTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setStockUpTime(Date stockUpTime) {
        this.stockUpTime = stockUpTime;
    }

    public Integer getIsCheckUp() {
        return isCheckUp;
    }

    public void setIsCheckUp(Integer isCheckUp) {
        this.isCheckUp = isCheckUp;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getCheckUpTime() {
        return checkUpTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setCheckUpTime(Date checkUpTime) {
        this.checkUpTime = checkUpTime;
    }

    public Integer getIsDeliver() {
        return isDeliver;
    }

    public void setIsDeliver(Integer isDeliver) {
        this.isDeliver = isDeliver;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getDeliverTime() {
        return deliverTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setDeliverTime(Date deliverTime) {
        this.deliverTime = deliverTime;
    }

    public Integer getIsArrive() {
        return isArrive;
    }

    public void setIsArrive(Integer isArrive) {
        this.isArrive = isArrive;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getArriveTime() {
        return arriveTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setArriveTime(Date arriveTime) {
        this.arriveTime = arriveTime;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getArriveAddTime() {
        return arriveAddTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setArriveAddTime(Date arriveAddTime) {
        this.arriveAddTime = arriveAddTime;
    }

    public String getKfPerson() {
        return kfPerson;
    }

    public void setKfPerson(String kfPerson) {
        this.kfPerson = kfPerson;
    }

    public Integer getIsPay() {
        return isPay;
    }

    public void setIsPay(Integer isPay) {
        this.isPay = isPay;
    }

    public String getPaySum() {
        return paySum;
    }

    public void setPaySum(String paySum) {
        this.paySum = paySum;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getPayTime() {
        return payTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setPayTime(Date payTime) {
        this.payTime = payTime;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getPayAddTime() {
        return payAddTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setPayAddTime(Date payAddTime) {
        this.payAddTime = payAddTime;
    }

    public Integer getIsReceiveInvoice() {
        return isReceiveInvoice;
    }

    public void setIsReceiveInvoice(Integer isReceiveInvoice) {
        this.isReceiveInvoice = isReceiveInvoice;
    }

    public String getInvoiceCode() {
        return invoiceCode;
    }

    public void setInvoiceCode(String invoiceCode) {
        this.invoiceCode = invoiceCode;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getReceiveInvoiceTime() {
        return receiveInvoiceTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setReceiveInvoiceTime(Date receiveInvoiceTime) {
        this.receiveInvoiceTime = receiveInvoiceTime;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getReceiveInvoiceAddTime() {
        return receiveInvoiceAddTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setReceiveInvoiceAddTime(Date receiveInvoiceAddTime) {
        this.receiveInvoiceAddTime = receiveInvoiceAddTime;
    }

    public String getCwPerson() {
        return cwPerson;
    }

    public void setCwPerson(String cwPerson) {
        this.cwPerson = cwPerson;
    }
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    public Date getTaskFinishTime() {
        return taskFinishTime;
    }
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    public void setTaskFinishTime(Date taskFinishTime) {
        this.taskFinishTime = taskFinishTime;
    }

    public Integer getState() {
        return state;
    }

    public void setState(Integer state) {
        this.state = state;
    }

    public String getMakeNo() {
        return makeNo;
    }

    public void setMakeNo(String makeNo) {
        this.makeNo = makeNo;
    }


    public Integer getIsSendEmail() {
        return isSendEmail;
    }

    public void setIsSendEmail(Integer isSendEmail) {
        this.isSendEmail = isSendEmail;
    }

    public String getPayEvidence() {
        return payEvidence;
    }

    public void setPayEvidence(String payEvidence) {
        this.payEvidence = payEvidence;
    }

    public String getReceiveEvidence() {
        return receiveEvidence;
    }

    public void setReceiveEvidence(String receiveEvidence) {
        this.receiveEvidence = receiveEvidence;
    }

    @Override
    public String toString() {
        return "LxcgTask{" +
        "id=" + id +
        ", orderNums=" + orderNums +
        ", supplier=" + supplier +
        ", creator=" + creator +
        ", creatorDept=" + creatorDept +
        ", createTime=" + createTime +
        ", cgPerson=" + cgPerson +
        ", isStart=" + isStart +
        ", startTime=" + startTime +
        ", isStockUp=" + isStockUp +
        ", stockUpTime=" + stockUpTime +
        ", isCheckUp=" + isCheckUp +
        ", checkUpTime=" + checkUpTime +
        ", isDeliver=" + isDeliver +
        ", deliverTime=" + deliverTime +
        ", isArrive=" + isArrive +
        ", arriveTime=" + arriveTime +
        ", arriveAddTime=" + arriveAddTime +
        ", kfPerson=" + kfPerson +
        ", isPay=" + isPay +
        ", paySum=" + paySum +
        ", payTime=" + payTime +
        ", payAddTime=" + payAddTime +
        ", isReceiveInvoice=" + isReceiveInvoice +
        ", invoiceCode=" + invoiceCode +
        ", receiveInvoiceTime=" + receiveInvoiceTime +
        ", receiveInvoiceAddTime=" + receiveInvoiceAddTime +
        ", cwPerson=" + cwPerson +
        ", taskFinishTime=" + taskFinishTime +
        ", state=" + state +
        ", makeNo=" + makeNo +
        ", isSendEmail=" + isSendEmail +
        ", payEvidence=" + payEvidence +
        ", receiveEvidence=" + receiveEvidence +
        "}";
    }
}
